package main

import (
	"net"
	"net/rpc"
	"net/rpc/jsonrpc"
)

type HelloService struct {}

func (s *HelloService) Hello(request string, reply *string) error {
	// 返回值是通过 修改reply的值
	*reply = "hello," + request
	return nil
}

func main() {
	//实例化一个server
	listener,_ := net.Listen("tcp",":1234")
	//注册 处理逻辑handler
	_ =rpc.RegisterName("HelloService", &HelloService{})
	// 启动服务
	for{
		conn, _ := listener.Accept() //当一个新的链接进来的时候
		go rpc.ServeCodec(jsonrpc.NewServerCodec(conn))
	}


	// rpc调用中有几个问题需要解决 1、call id 2、序列化和反序列化
}